Contrib - Improving NAT/PAT Bypass + DSCP on Control Session#100
Contrib - Improving NAT/PAT Bypass + DSCP on Control Session#100froudaut wants to merge 5 commits intoperfsonar:masterfrom
Conversation
modifié : owamp/owamp/configure.ac modifié : owamp/owamp/owamp/api.c modifié : owamp/owamp/owamp/capi.c modifié : owamp/owamp/owamp/endpoint.c modifié : owamp/owamp/owamp/owamp.h modifié : owamp/owamp/owamp/owampP.h modifié : owamp/owamp/owamp/protocol.c modifié : owamp/owamp/owamp/sapi.c modifié : owamp/owamp/owampd/owampd.c modifié : owamp/owamp/owampd/owampdP.h modifié : owamp/owamp/owping/owping.c modifié : owamp/owamp/owping/owpingP.h modifié : owamp/owamp/powstream/powstream.c modifié : owamp/owamp/powstream/powstreamP.h modifié : owamp/owamp/test/session_setup.c
|
Thanks for your contribution. We're currently in the middle of our conference and holiday season and will have a look at your proposed changes early next year. Not having reviewed the changes yet, a couple of general comments: This software is considered the reference implementation for OWAMP, so we have to tread carefully. Our primary concerns will be not breaking existing behavior, interoperability with versions of the software that don't have this patch and changes to the protocol which, unfortunately, doesn't have provisions for versioning. |
|
Hi . |
Trying to provide solutions to improve NAT/PAT Bypass :
TWAMP, twping :
Requests from Control-Client. In that case, Control-Client is also Session-Sender and
Control-Server is Session-Reflector. Control-Server had then to switch the Zero Addr with
the corresponding Control IP Addr.
Such option is still available but now also split in 2 options : [X] For Session-Sender,
[Y] For Session-Reflector.
It helps to bypass NAT on both Session Sender/Reflector when they are also Control Client/Server.
is not checked.
OWAMP, owping :
also Control Client/Server.
As for TWAMP, it permits to set Session Sender/Receiver IP to Zero Addr in Owamp Requests
from Control-Client : [X] For Session-Sender, [Y] For Session-Server.
In that case Control-Server had to switch the Zero Addr with the corresponding Session IP Addr
according the way test is done. For example when tests are done in both ways using Owamp, option [X]
tells the Control-Server to use the zero address for Control-Client in test session from Control-Client
to Control-Server and for Control-Server in test session from Control-Server to Control-client
It helps to bypass NAT on both Session Sender/Receiver.
is not checked.
twampd :
are also Control Client/Server. Control-Server had then to switch the Zero Addr with
the corresponding Control IP Addr.
It helps to bypass NAT on both Session Sender/Reflector when they are also Control Client/Server.
is not checked. Indeed, even with Zero Address, PAT on Session-Sender was not considered.
does not use zero address. In that case any Session-Reflector Address is seen as Local Address.
owampd :
also Control Client/Server.
As for TWAMP, it permits to handle Zero Addr for Session Sender/Receiver in Owamp Requests
from Control-Client
In that case Control-Server had to switch the Zero Addr with the corresponding Session IP Addr
according the way test is done.
It helps to bypass NAT on both Session Sender/Receiver.
is not checked. Indeed, even with Zero Address, PAT on Session-Remote was not considered.
does not use zero address. In that case any Session-Local Address is seen as Local Address.
DSCP On Control Session:
owping/twping
Add an option [m] to set DSCP field on Control packets (from Control Client to Server).
To reflect ToS received from Control-Client, on Linux we may have to set 1 into
/proc/sys/net/ipv4/tcp_reflect_tos on Control-Server side